/**
 * @file wa_gui.c
 *
 */

/*********************
*      INCLUDES
*********************/
#include "wa_gui.h"
#include "wa_obj.h"
#include "wa_pid.h"
#include "wa_input.h"
#include "wa_wm.h"
#include "wa_task.h"
#if USE_WA_ANIM != 0
#include "wa_anim.h"
#endif
#include "wa_screen_erase.h"
#include "wa_widget.h"
/*********************
*      DEFINES
*********************/

/**********************
*      TYPEDEFS
**********************/

/**********************
*  STATIC PROTOTYPES
**********************/

/**********************
*  STATIC VARIABLES
**********************/

/**********************
*      MACROS
**********************/

/**********************
*   GLOBAL FUNCTIONS
**********************/


/**
 * WaGUI init
 */
void wa_init(void)
{
	wa_wm_module_init();
	wa_obj_module_init();
	wa_pid_module_init();
	wa_input_module_init();
	wa_task_module_init();
#if USE_WA_ANIM != 0
	wa_anim_module_init();
#endif
	wa_screen_erase_module_init();
	wa_widget_init();
}

/**
 * WaGUI exec
 */
void wa_exec(void)
{
	wa_task_handle();
	wa_wm_handle();
	if (wa_pid_is_enable() == wa_ok)
	{
		wa_wm_pid_handle();
	}
	if (wa_input_is_enable() == wa_ok)
	{
		wa_input_handle();
	}
}

/**********************
 *   STATIC FUNCTIONS
 **********************/
